package com.iris.live.services.data.models;

import javax.persistence.*;
import java.sql.Date;
import java.sql.Timestamp;

/**
 * Created by xiO on 2016/12/8.
 */
@Entity
@Table(name = "lsh金融申请", schema = "live", catalog = "")
public class Lsh金融申请Model {
    private Integer 编号;
    private String 初始报价单号;
    private String 状态;
    private Date 申请日期;
    private Date 申请结果日期;
    private Integer 准全款原因;
    private String 准全款备注;
    private Integer 战败原因;
    private String 战败备注;
    private Date 撤单日期;
    private String 撤单原因;
    private String 退款金额;
    private Date 重新申请日期;
    private String 重新申请金融服务费;
    private Date 抵押日期;
    private Date 放款日期;
    private String 操作人;
    private String 更新账号;
    private Timestamp 更新时间;
    private Date applyPassDate;  // 申请通过日期

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "编号")
    public Integer get编号() {
        return 编号;
    }

    public void set编号(Integer 编号) {
        this.编号 = 编号;
    }

    @Basic
    @Column(name = "初始报价单号")
    public String get初始报价单号() {
        return 初始报价单号;
    }

    public void set初始报价单号(String 初始报价单号) {
        this.初始报价单号 = 初始报价单号;
    }

    @Basic
    @Column(name = "状态")
    public String get状态() {
        return 状态;
    }

    public void set状态(String 状态) {
        this.状态 = 状态;
    }

    @Basic
    @Column(name = "申请日期")
    public Date get申请日期() {
        return 申请日期;
    }

    public void set申请日期(Date 申请日期) {
        this.申请日期 = 申请日期;
    }

    @Basic
    @Column(name = "申请结果日期")
    public Date get申请结果日期() {
        return 申请结果日期;
    }

    public void set申请结果日期(Date 申请结果日期) {
        this.申请结果日期 = 申请结果日期;
    }

    @Basic
    @Column(name = "准全款原因")
    public Integer get准全款原因() {
        return 准全款原因;
    }

    public void set准全款原因(Integer 准全款原因) {
        this.准全款原因 = 准全款原因;
    }

    @Basic
    @Column(name = "准全款备注")
    public String get准全款备注() {
        return 准全款备注;
    }

    public void set准全款备注(String 准全款备注) {
        this.准全款备注 = 准全款备注;
    }

    @Basic
    @Column(name = "战败原因")
    public Integer get战败原因() {
        return 战败原因;
    }

    public void set战败原因(Integer 战败原因) {
        this.战败原因 = 战败原因;
    }

    @Basic
    @Column(name = "战败备注")
    public String get战败备注() {
        return 战败备注;
    }

    public void set战败备注(String 战败备注) {
        this.战败备注 = 战败备注;
    }

    @Basic
    @Column(name = "撤单日期")
    public Date get撤单日期() {
        return 撤单日期;
    }

    public void set撤单日期(Date 撤单日期) {
        this.撤单日期 = 撤单日期;
    }

    @Basic
    @Column(name = "撤单原因")
    public String get撤单原因() {
        return 撤单原因;
    }

    public void set撤单原因(String 撤单原因) {
        this.撤单原因 = 撤单原因;
    }

    @Basic
    @Column(name = "退款金额")
    public String get退款金额() {
        return 退款金额;
    }

    public void set退款金额(String 退款金额) {
        this.退款金额 = 退款金额;
    }

    @Basic
    @Column(name = "重新申请日期")
    public Date get重新申请日期() {
        return 重新申请日期;
    }

    public void set重新申请日期(Date 重新申请日期) {
        this.重新申请日期 = 重新申请日期;
    }

    @Basic
    @Column(name = "重新申请金融服务费")
    public String get重新申请金融服务费() {
        return 重新申请金融服务费;
    }

    public void set重新申请金融服务费(String 重新申请金融服务费) {
        this.重新申请金融服务费 = 重新申请金融服务费;
    }

    @Basic
    @Column(name = "抵押日期")
    public Date get抵押日期() {
        return 抵押日期;
    }

    public void set抵押日期(Date 抵押日期) {
        this.抵押日期 = 抵押日期;
    }

    @Basic
    @Column(name = "放款日期")
    public Date get放款日期() {
        return 放款日期;
    }

    public void set放款日期(Date 放款日期) {
        this.放款日期 = 放款日期;
    }

    @Basic
    @Column(name = "applyPassDate")
    public Date getApplyPassDate() {
        return applyPassDate;
    }

    public void setApplyPassDate(Date applyPassDate) {
        this.applyPassDate = applyPassDate;
    }

    @Basic
    @Column(name = "操作人")
    public String get操作人() {
        return 操作人;
    }

    public void set操作人(String 操作人) {
        this.操作人 = 操作人;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Lsh金融申请Model that = (Lsh金融申请Model) o;

        if (编号 != null ? !编号.equals(that.编号) : that.编号 != null) return false;
        if (初始报价单号 != null ? !初始报价单号.equals(that.初始报价单号) : that.初始报价单号 != null) return false;
        if (状态 != null ? !状态.equals(that.状态) : that.状态 != null) return false;
        if (申请日期 != null ? !申请日期.equals(that.申请日期) : that.申请日期 != null) return false;
        if (申请结果日期 != null ? !申请结果日期.equals(that.申请结果日期) : that.申请结果日期 != null) return false;
        if (准全款原因 != null ? !准全款原因.equals(that.准全款原因) : that.准全款原因 != null) return false;
        if (准全款备注 != null ? !准全款备注.equals(that.准全款备注) : that.准全款备注 != null) return false;
        if (战败原因 != null ? !战败原因.equals(that.战败原因) : that.战败原因 != null) return false;
        if (战败备注 != null ? !战败备注.equals(that.战败备注) : that.战败备注 != null) return false;
        if (撤单日期 != null ? !撤单日期.equals(that.撤单日期) : that.撤单日期 != null) return false;
        if (撤单原因 != null ? !撤单原因.equals(that.撤单原因) : that.撤单原因 != null) return false;
        if (退款金额 != null ? !退款金额.equals(that.退款金额) : that.退款金额 != null) return false;
        if (重新申请日期 != null ? !重新申请日期.equals(that.重新申请日期) : that.重新申请日期 != null) return false;
        if (重新申请金融服务费 != null ? !重新申请金融服务费.equals(that.重新申请金融服务费) : that.重新申请金融服务费 != null) return false;
        if (抵押日期 != null ? !抵押日期.equals(that.抵押日期) : that.抵押日期 != null) return false;
        if (放款日期 != null ? !放款日期.equals(that.放款日期) : that.放款日期 != null) return false;
        if (操作人 != null ? !操作人.equals(that.操作人) : that.操作人 != null) return false;
        if (更新账号 != null ? !更新账号.equals(that.更新账号) : that.更新账号 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 编号 != null ? 编号.hashCode() : 0;
        result = 31 * result + (初始报价单号 != null ? 初始报价单号.hashCode() : 0);
        result = 31 * result + (状态 != null ? 状态.hashCode() : 0);
        result = 31 * result + (申请日期 != null ? 申请日期.hashCode() : 0);
        result = 31 * result + (申请结果日期 != null ? 申请结果日期.hashCode() : 0);
        result = 31 * result + (准全款原因 != null ? 准全款原因.hashCode() : 0);
        result = 31 * result + (准全款备注 != null ? 准全款备注.hashCode() : 0);
        result = 31 * result + (战败原因 != null ? 战败原因.hashCode() : 0);
        result = 31 * result + (战败备注 != null ? 战败备注.hashCode() : 0);
        result = 31 * result + (撤单日期 != null ? 撤单日期.hashCode() : 0);
        result = 31 * result + (撤单原因 != null ? 撤单原因.hashCode() : 0);
        result = 31 * result + (退款金额 != null ? 退款金额.hashCode() : 0);
        result = 31 * result + (重新申请日期 != null ? 重新申请日期.hashCode() : 0);
        result = 31 * result + (重新申请金融服务费 != null ? 重新申请金融服务费.hashCode() : 0);
        result = 31 * result + (抵押日期 != null ? 抵押日期.hashCode() : 0);
        result = 31 * result + (放款日期 != null ? 放款日期.hashCode() : 0);
        result = 31 * result + (操作人 != null ? 操作人.hashCode() : 0);
        result = 31 * result + (更新账号 != null ? 更新账号.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }
}
